package algorithm.tree;

/**
 * 树抽象数据类型
 */
public interface TTree<E> {
    boolean isEmpty();
    E getRoot();//返回根结点元素
    E getParent(E child);//返回child的父母结点
    int getChildCount(E parent);//返回parent的孩子结点数
    E getFirtChild(E parent);//返回parent的一个孩子结点
    E getNextSibling(E element);//返回element的下一个兄弟结点
    void traverse();//遍历树
    void insert (E parent,E element);//插入element作为parent的孩子结点
    void remove(E parent);//删除以parent做为根结点的子树
    void clear();//清空
}
